package it.polimi.traveldream.ejb.invito;

import it.polimi.traveldream.ejb.acquistomanagement.Acquisto;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToOne;
import javax.persistence.Table;

/**
 * Entity implementation class for Entity: PacchettoEntity
 *
 */
@Entity
@Table(name="INVITO")
@NamedQueries({
	@NamedQuery(name=Invito.FIND_ALL,
				query="SELECT i FROM Invito i "),
})

public class Invito {

	public Invito() {
		super();
	}

	private static final long serialVersionUID = 1L;
	
	public static final String FIND_ALL = "Invito.findAll";
	
	@Id
	@GeneratedValue (strategy=GenerationType.IDENTITY)
	private int idInvito;
	
	private String testo;
	
	private String prodotto;
	
	private String mittente;
	
	private String destinatario;
	
	@OneToOne(fetch=FetchType.LAZY)
	@JoinColumn(name="IDACQUISTO")
	private Acquisto acquisto;

	public Invito(InvitoDTO nuovo){
        
        this.testo		= nuovo.getTesto();
        this.prodotto	= nuovo.getProdotto();
        this.mittente   = nuovo.getMittente();
        this.destinatario= nuovo.getDestinatario();
    }

	public int getIdInvito() {
		return idInvito;
	}

	public void setIdInvito(int idInvito) {
		this.idInvito = idInvito;
	}

	public String getTesto() {
		return testo;
	}

	public void setTesto(String testo) {
		this.testo = testo;
	}

	public String getProdotto() {
		return prodotto;
	}

	public void setProdotto(String prodotto) {
		this.prodotto = prodotto;
	}

	public String getMittente() {
		return mittente;
	}

	public void setMittente(String mittente) {
		this.mittente = mittente;
	}

	public Acquisto getAcquisto() {
		return acquisto;
	}

	public void setAcquisto(Acquisto acquisto) {
		this.acquisto = acquisto;
	}

	public static long getSerialversionuid() {
		return serialVersionUID;
	}

	public static String getFindAll() {
		return FIND_ALL;
	}

	public String getDestinatario() {
		return destinatario;
	}

	public void setDestinatario(String destinatario) {
		this.destinatario = destinatario;
	}
	
	
	
	
}
